package com.ming.transaction.service;

import com.ming.transaction.common.Result;
import com.ming.transaction.entity.Role;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author 陈仕健
 * @since 2023-05-06
 */
public interface IRoleService extends IService<Role> {

    /**
     * 分配角色菜单
     * @param roleId
     * @param menusId
     * @return
     */
    Result roleMenu(Integer roleId, List<Integer> menusId);

    /**
     * 获取当前角色菜单
     * @param roleId
     * @return
     */
    Object getRoleMenu(Integer roleId);

    /**
     * 查询所有角色
     * @return
     */
    Result findRole();

    /**
     * 管理员添加角色
     * @param role
     * @return
     */
    Result saveRole(Role role);

    /**
     * 管理员修改角色信息
     * @param role
     * @return
     */
    Result updateRole(Role role);

    /**
     * 管理员删除角色信息
     * @param id
     * @return
     */
    Result deleteById(Integer id);

    /**
     * 管理员批量删除角色
     * @param ids
     * @return
     */
    Result deleteByIds(List<Integer> ids);
}
